package com.example.service;

import com.example.entity.Role;

import java.util.List;

/**
 * @author fyxw
 */
public interface RoleService {
    /**
     * 通过id查询
     *
     * @param id 唯一标识符
     * @return Role 对象
     */
    Role findRoleById(int id);

    /**
     * 新建一个Role
     *
     * @param role 传入一个Role对象，id不需要赋值
     */
    void addRole(Role role);

    /**
     * 通过id删除Role, 并返回是否删除成功,
     * 不处理由于异常导致的失败行为, 仅处理无此id对应的Role导致的删除失败
     *
     * @param id Role id
     * @return 是否删除成功
     */
    boolean deleteRole(int id);

    /**
     * 通过新的Role修改原有的Role, id必须提供
     *
     * @param role 已经修改的Role
     * @return 是否修改成功
     */
    boolean updateRole(Role role);

    /**
     * 查询所有数据
     * @return list
     */
    List<Role> findAll();
}
